package dao;

import dao.entity.BrandDAO;
import dao.entity.CategoryDAO;
import dao.entity.ColorDAO;
import dao.entity.GroupRoleDAO;
import dao.entity.PageTaskDAO;
import dao.entity.PageFunctionDAO;
import dao.entity.ProductDAO;
import dao.entity.ProductDetailDAO;
import dao.entity.SizeDAO;
import dao.entity.ThemeDAO;
import dao.entity.UserDAO;

public class JPAHiberDAOFactory {
	private static JPAHiberDAOFactory instance;

	public synchronized static JPAHiberDAOFactory getInstance() {
		if (instance == null)
			instance = new JPAHiberDAOFactory();
		return instance;
	}

	public GroupRoleDAO getGroupRoleDAO() {
		return new GroupRoleDAO();
	}

	public ProductDAO getProductDAO() {
		return new ProductDAO();
	}

	public UserDAO getUserDAO() {
		return new UserDAO();
	}

	public ThemeDAO getThemeDAO() {
		return new ThemeDAO();
	}

	public CategoryDAO getCategoryDAO() {
		return new CategoryDAO();
	}

	public BrandDAO getBrandDAO() {
		return new BrandDAO();
	}

	public ColorDAO getColorDAO() {
		return new ColorDAO();
	}

	public SizeDAO getSizeDAO() {
		return new SizeDAO();
	}

	public ProductDetailDAO getProductDetailDAO() {
		return new ProductDetailDAO();
	}

	public PageFunctionDAO getPageFunctionDAO() {
		return new PageFunctionDAO();
	}
	
	public PageTaskDAO getPageTaskDAO() {
		return new PageTaskDAO();
	}
}
